#ifndef UNIT_STOP_H
#define UNIT_STOP_H

#include "GameCommand.h"
#include <string>

struct Unit_Stop : public GameCommand
{
	static string command;
	
	Unit_Stop() : GameCommand() { }
	virtual ~Unit_Stop() {}
	
	virtual void onExecute();
	virtual string toString();
	virtual SerializedGameCommand serialize() const;
	
	static Unit_Stop* interpret(const SerializedGameCommand&);
	static Unit_Stop* interpret(const char* line);
	
private:
	/*	If you get a link error regarding a command's copy constructor, it's because it's defined privately. We force
		passing by reference for efficiency.
	*/
	Unit_Stop(const Unit_Stop&);
	Unit_Stop& operator=(const Unit_Stop&);
};

#endif
